home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tech Arsenal 1
/
Tech Arsenal (Arsenal Computer).ISO
/
tek-04
/
tm480.zip
/
TMMANUAL.EXE
/
PRINTMAN.TSK
< prev
next >
Wrap
Text File
|
1991-09-10
|
10KB
|
377 lines
╗ Titlσ ║ PRINTMAN.TS╦ Las⌠ UpdateΣ ║ Septembe≥ 6¼ 1991
; Author : Steve Johnson - FmP. Version : 1.20
; Purpose : Selective On-line Taskmaster manual print facility
; Notes : discards blank line 22 if present
; : Requires IBM Graphics printer emulation to print
; : Form names were captured from SCR output into a file
; : The data command understands ^x and sends a control
; : character ^ has to be sent as ^^
; version 1.20
╗ ║ Caε no≈ translatσ ou⌠ 'non-printablσ characters'
; version 1.10
; : Optional use of form feeds.
define pages,1
hexvar crlf,0d0a
hexvar esc,1b
hexvar line_23,c8cd
hexvar vbar,ba
hexva≥ unprin_table,18191b1a11
int count
int line
int lines_this_page
int saftey
int toapage
int xcount
logical form_feeds
logical suppress
logical proceed
logical last_was_spaces
logical quit
logical skip
logical next_menu
logica∞ no_translate
logical partial
var formname,2
var formindex,2,occurs 200,
'1 2 X MGG1G2G3G4G5G6G7G8G9GAGBGCMHH1H2H3H4H5H6H7H8H9HA'
'HBHCHDI1I2I3I4MEE1E2E3E4E5E6E7E8E9EAEBECEDMFF1F2F3F4F5F6F7'
'F8F9FAFBFCFDFEFFFGFHFIM1111213141516M22122232425262728292A'
'2B2CM3313233M44142434445464748494A4B4C4D4E4FM5515253M66162'
'6364M771727374757677M88182M9919293949596979899MAA1A2A3A4A5'
'A6A7MBB1B2B3B4B5B6B7B8B9BAMCC1C2C3C4C5C6C7C8MDD1D2D3'
var act_space,12
var min_space,12,' 262144' ;disc space warning limit 256k
var work_space,12,' 2500';disc space warning limit 2500bytes
var char,1
var last_line,80èvar lines_per_page,2
var name,8,'PRINTMAN'
var null,1
var s_line,90
var screen,80,occurs24
var space_line,80
var spaces_78,78
va≥ translations,1,occur≤ 5
va≥ unprintable,1,occur≤ 5
vconst cls,11 ;Clear screen
vconst attn,79
vconst brite,41
end
combine vbar 78 vbar into space_line
clear spaces_78
forms logon.ovr
lookfor printman.ovr
if not found
insert name name
put "NO_FORMS"
stop
fi
movσ unprin_tablσ t∩ unprintable
forms printman.ovr
dspace
move display to act_space
if act_space < min_space
put space_warn
get proceed
if not proceed
stop
fi
fi
put manprint noclear
if anyfk
stop
fi
get suppress lines_per_page form_feeds
put graph
iµ funke∙ ╜ 10
stop
fi
movσ fk▓ t∩ no_translate
if no⌠ fk2
unti∞ xcoun⌠ ╜ 6
get entr∙ xcoun⌠ oµ translations
fΘ xcount
clea≥ xcount
fi
move lines_per_page to saftey
move lines_per_page to toapage
subtract 24 from saftey
lookfor tmman.ovr
if not found
put 'NO_TMMAN'
stop
fi
forms tmman.ovr
behave 3 'TMMAN.MAN'
until count = 200
move entry count of formindex to formname
trim formname
inkey
if key
forms printman.ovr
put break-in
get char
forms tmman.ovr
upper char
if char = 'Y'
move true to quit
move true to partial
fi
fi
if formname = null or quit
behave 0
display cls
cursor 12 25 'Your manual is called TMMAN.MAN'
cursor 13 25 'View with LIST? Answer Y or N '
inkey char
upper char
if char = 'Y'
move true to hide
run 'LIST TMMAN.MAN'
fi
display cls
cursor 12 15 'Your manual is ready for printing in TMMAN.MAN'
if partial
cursor 13 15 'Length ' pages ' pages (Extract only)'
else
cursor 13 15 'Length ' pages ' pages (Contains full listing)'
fi
stop
fi
clear skip
if formname sw 'M' or formname = '1 ' or formname sw 'X'
move 8000h to bbmask
put formname nodata noclear
userline brite attn 'Press <return> (or wait 5 seconds) to print this section, <esc> to skip'
wait 5
clear next_menu
if key and keyval = esc
move true to partialè increment count
until next_menu or formname = null
move entry count of formindex to formname
trim formname
if formname sw 'M' or formname = '1' or formname sw 'X'
move true to next_menu
fi
fi count
decrement count count
move true to skip
fi
else
put formname nowait
userline brite attn 'Printing ' formname '... Press any key to break-in'
fi
if not skip
clear line
until line = 24
clear s_line
scanvid line giving s_line
move s_line to entry line of screen
fi line
clear line last_was_spaces
until line = 24
move entry line of screen to s_line
if s_line ct '^'
replace all '^' of s_line with '^^'
fi
iµ no⌠ no_translate
clea≥ xcount
unti∞ xcoun⌠ ╜ 5
if s_line ct entr∙ xcoun⌠ oµ unprintable
replacσ al∞ entr∙ xcoun⌠ oµ unprintablσ oµ s_linσ witΦ entr∙ xcoun⌠ oµ translations
fi
fΘ xcount
fi
if suppress
if line = 23
data s_line crlf
increment lines_this_page
else
if s_line ct spaces_78
move true to last_was_spaces
else
if last_was_spaces
data space_line crlf
increment lines_this_page
fi
data s_line crlf
increment lines_this_page
clear last_was_spaces
fi
fi
else
data s_line crlfè increment lines_this_page
fi
fi line
if lines_this_page > saftey
if form_feeds
data ^l crlf
else
until lines_this_page = toapage
data crlf
fi lines_this_page
fi
increment pages
clear lines_this_page
fi
dspace
move display to act_space
if act_space < work_space
put
move true to quit
move true to partial
fi
fi
fi count
endtask
@video
@nf manprint
@acceptfk f10
@dim
@logical
@num min40,max99
@logical
@head left,PRINTMAN.TSK
@head right,'Taskmaster (c) FmP 1991'
@head centre,'Taskmaster Manual Extraction'
@colour page,cyan,blue
@banner
@border
This task takes forms from TMMAN.OVR and displays them on the screen
then reads the screen and writes the contents to TMMAN.MAN. The
output file is ~256k in size.
In order to save space consecutive blank lines can be supressed:
Do you wish to suppress blank lines? [Y]
The task paginates the output:
How many lines do you want on each page? [66] 40-99
Use form feed characters to eject pages? [N]
The pagination is not very sophisticated and may throw pages in places
where it doesn't need to. It may be worth looking at the output file
with your wordprocessor (or the supplied utility LIST) before printing. è
Please note that the printer will need to be able to print the IBM
graphics character set to print the file successfully.
@translate
@MAP #,9C
Please note that the documentation produced is not as comprehensive or
as readable as that in the printed manual which costs #20.
@bright
@use 'Press F10 to abandon'
@end
@nf no_tmman
@colour char,white,red
@dim
@win line4,column20,depth16,width42
@out white
PRINTMAN-Error:
PRINTMAN requires access to the forms
file for the on-line manual. This file
is called TMMAN.OVR. It is not
currently available. The file is
normally created either during
installation or via OVERVIEW.TSK (you
can of course also create it manually
with SCR).
To create the file from OVERVIEW select
TMMAN from the main menu, this will
create the file and enter the
application. You may then exit and re-
run PRINTMAN.
@end
@nf break-in
@logical
@bright
@colour char,white,red
@window line10,column15,depth6,width21
@drop
@out cyan
PRINTMAN
Break-in detected.
Abandon processing?
[N] enter Y or N
and press
@col char,white,red
@end
@nf no-space
@bright
@colour char,white,red
@window line10,column15,depth10,width21
@drop
@out cyan
PRINTMAN
I need more space.
Unable to proceed.
The amount of free
space is now less
than 2500 bytes. è Please make more
space and re-run.
Press any key...
@col char,cyan,blue
@end
@nf space_warn
@head centre,'Free Space'
@log
@colour page,cyan,blue
@banner
@border
This task creates an output file of upto 256k in size.
Your logged drive has less space than this.
Do you wish to proceed? [N]
@end
@nf graph
@acceptfδ esc,f2
@head centre,'Graphic≤ characters'
@colour page,cyan,blue
@banner
@border
@strámin1
@strámin1
@strámin1
@strámin1
@strámin1
áááááThσ printou⌠ wil∞ contaiε somσ character≤ tha⌠ you≥ printe≥ ma∙ no⌠ ábσ ì
áááááablσ t∩ easil∙ prin⌠ (notabl∙ ò ä û ù anΣ ⌐ fo≥ thi≤ reasoε yo⌡ ma∙
wisΦ át∩ usσ othe≥ character≤ t∩ represen⌠ these« Pleasσ áspecif∙ áthσ ì
ááááácharacter≤ t∩ bσ useΣ (elsσ pres≤ f▓ t∩ leavσ theφ a≤ the∙ are).
áááááfo≥ ò usσ [U▌
áááááfo≥ ä usσ [D▌
áááááfo≥ usσ [L▌
áááááfo≥ usσ [R▌
áááááfo≥ usσ [<▌
Pres≤ ü t∩ translatσ a≤ pe≥ thσ entrie≤ above;
Pre≤≤ f▓ t∩ preven⌠ translation;
Pres≤ f1░ t∩ qui⌠ PRINTSCR
áááááPleasσ notσ tha⌠ thσ printe≥ wil∞ neeΣ t∩ bσ ablσ t∩ prin⌠ thσ IB═ ì
ááááágraphic≤ characte≥ se⌠ t∩ prin⌠ thσ filσ successfully«
@end
@eofè